package com.chen.file.service;

import com.chen.file.params.FileSplitDownloadParam;
import com.chen.file.params.FileSplitUploadParam;
import org.springframework.web.multipart.MultipartFile;

/**
 * @author: ChenJinLong
 * @DATE: 2024/7/25
 **/
public interface FileService {

    /**
     * 上传文件
     *
     * @param multiFile 文件
     * @return 文件存储路径
     */
    String uploadFile(MultipartFile multiFile);

    /**
     * 文件分片上传
     * @param param 参数
     * @return 文件存储路径
     */
    String fileSplitUpload(FileSplitUploadParam param);

    /**
     * 文件下载
     * @param filePath 文件路径
     */
    void downloadFile(String filePath);

    /**
     * 文件分片下载
     * @param param 参数
     */
    void fileSplitDownload(FileSplitDownloadParam param);
}
